1. Field of Art
The disclosure generally relates to video compression, and more particularly, to effectively reducing intra frame beating effect within a video processing system.
2. Description of the Related Art
Many multimedia applications available today, such as digital versatile disk (DVD), digital television broadcasting, satellite television, Internet video streaming, video conferencing, video security, and digital camcorders, requires high compression ratios due to limited transmission bandwidth or storage capacity. To improve compression efficiency, currently available coding standards, such as MPEG-1, MPEG-2, MPEG-4 and H.264/AVC etc., removes information redundancy spatially within a video frame and temporally between video frames.
To effectively remove information redundancy contained in a video sequence, MPEG standards introduced three frame types for coding: intra frame (I frame), predicted frame (P frame) and bidirectional predicted frame (B frame). I and P frames are sometimes called anchor frames used for motion-compensated prediction in a group of pictures. B frames in conventional coding standards such as MPEG-2 are predicted using anchor frames, and are not used to predict anchor frames. The different types of frames are organized together into a group of pictures (GOP). A GOP is the smallest random access unit in a video sequence. Thus, a video sequence is often stored as a sequence of GOPs in memory.
There are two types GOPs: open and closed. The predicted P and B frames in a closed GOP are not predicted from a frame not in that GOP. In an open GOP, the first B frames in the GOP can be predicted from the last anchor frame in the previous GOP.
FIG. 1A is a diagram of a conventional encoding pattern and dependencies between I, P, and B frames in a GOP and among two consecutive closed GOPs. A typical closed GOP starts with an I frame. Arrows represent inter-frame prediction dependencies. For example, for the first GOP, i.e. GOP #1, the first P frame, P1, is coded using the past I frame, which is I1, as a reference. Each subsequent P frames use the past P frames as its reference, i.e. P2 is coded using P1 as its reference. B frames are coded using the closest past I and/or P frames as a reference for forward prediction, and the future I or P frames for backward prediction. For example, B1 and B2 are coded using h as their reference for forward prediction, and P1 as their reference for backward prediction. Such encoding pattern and dependencies between I, P, and B frames in GOP #1 is repeated for GOP #2 and subsequent GOPs, and no frame from GOP #1 is used to predict the frames of GOP #2.
FIG. 1C is a diagram of a conventional encoding pattern and dependencies between I, P, and B frames in a GOP and among two consecutive open GOPs. A typical open GOP starts with a B frame. The first two B frames, B1 and B2, in GOP #1 are only predicted from frame I1 because there is no preceeding GOP. Technically, GOP #1 may be considered a closed GOP because it does not have any dependencies to a previous GOP. However, the first two B frames, B1 and B2, in GOP #2 are predicted from P2 in GOP #1 and from I1 in GOP #2 (the dashed arrows). Such encoding pattern and dependencies between I, P, and B frames in GOP #2 is repeated for subsequent open GOPs.
Depending on the compression ratio and characteristics of input video content, various compression artifacts may be introduced from the conventional GOP coding structures described above. Intra frame beating is a compression artifact that often arises when coding an I frame of the current GOP without considering the visual similarity (i.e., temporal redundancy) between the I frame and the last frame (in displaying order) of an immediately previous GOP. For example in FIG. 1A, when coding a video sequence with relatively slow and smooth motion, the last frame in displaying order of GOP #1 is P2, which is coded using P1 as its reference, and P1 is coded using I1 as its reference. Thus, prediction errors in P1 can propagate to P2 because P1 is used as a reference frame to code P2. By construction, an I frame of the subsequent GOP is not coded using any previous GOP frame. Thus, when coding I1 of GOP #2, P2 of GOP #1 is not used as a reference frame for h of GOP #2 no matter how similar h of GOP #2 and P2 of GOP #1 are in content. Due to the different compression algorithms applied to I and P frames and due to the propagation of prediction errors, a very perceivable shift in visual quality can be induced between the last displayed frame in the previous GOP and the I frame in the current GOP. Such an effect is often called intra frame beating.
Such intra frame beating effect may get worse at low bit rates. First, at low bit rates, P frames are quantized more which results in higher prediction error. In turn, the prediction errors accumulate so that the last frame of a GOP contains more coding error than the first frame of the next GOP. An easily observable visual quality jump will usually occur.
In new video coding standards, such as H.264/AVC, intra frame beating effect still poses a significant challenge, sometimes more so than other video coding standards. The main sources of the challenge come from the use of deblocking filter and more differentiated compression algorithms applied to intra frames and non-intra frames.
Hence, there is, inter alia, a lack of a system and method that reduces intra frame beating effect within a video processing system.